1. Field of the Invention
This invention relates generally to systems and methods for management of documents retained within a database. More particularly, this invention relates to systems and methods for the management of the categorization of documents retained within a database. Further, this invention relates to systems and methods for controlling permissions for accessing documents retained within a database based on the categories of these documents.
2. Description of Related Art
Documentation databases are well known in the art and are used to provide information to a user. An example of such a database would be the descriptions of the technology and process for fabricating integrated circuits. In semiconductor foundries and “fab-less” integrated circuit manufacturers, the foundry must maintain complete descriptions of the technologies such that the “fab-less” integrated circuit manufacturer can design an integrated circuit, simulate the design to verify its function, and technology rules necessary to create the masks for fabricating the integrated circuit. A semiconductor foundry has the capability for fabricating many types of integrated circuits and therefore must maintain the complete documentation for each of the process technologies for the types of integrated circuits.
As the process has become more automated, the documents are now maintained as records within a database. With the advent of programming languages such as Extensible Markup Language (XML), the database for the documents no longer contains just the text, diagrams, and information for the formatting of the document for printing. The database now maintains records describing a documentation number, version level, an amount of time for which the document is to be effective, a document status, and a storage location of the document. In programming languages such as XML this information is recorded as tags that maybe embedded within the text of the document. Further, the database may have information describing certain attributes of the document. In the example of the documents of a silicon foundry, the attributes may be a document type such as bond pad rules, cell layout, noise model and a general description of each of the technologies of the silicon foundry for which the document pertains. Other attributes may include tags identifying applicable technologies, circuit types for the technology, and release status.
Organization and categorization of the documents to permit access to the document by a user is generally through a hierarchical document category tree. Differing attributes are chosen for the various levels of the hierarchical document category tree. Traditionally, access for the documents is granted or denied at the nodes of the tree.
For a more complete discussion of the structure and operation of the document management system of the prior art refer now to FIG. 1. The document database 5 contains the document bodies 10. The document bodies 10 are the textual information providing the detailed information of the document. The document basic information records 15 provides the information describing the document such as the document number, the document version, document phase of creation, the document title, the effective duration for which the document is considered valid, the current status of the document, and the physical location within the database 5 of the document bodies 10. In document databases using programming languages such as XML, the document basic information 15 maybe appended to the document bodies as XML tags. Alternately, the document basic information 15 maybe recorded in a separate file with the document location acting as a pointer to the document body 10.
Attributes 20 of the document are associated with the document basic information again either as tags as in XML implementations or as separate file records having a pointer within the document basic information records 15. The attributes categorize the document according to certain characteristics such as document type 22, application 24, technology 26, and release type 28. For instance in the silicon foundry, the document type 22 would be documents that describe the bond pad rules, the cell layout, noise model, or any general document providing description of the document. The application 24 for the silicon foundry would be, for instance, logic, Bi-CMOS, a single transistor random access memory, or other documents describing the general technology. The technology attribute 26 describes the minimum feature size the identifies a technology in this example 0.13 μm, 0.15 μm, 0.18 μm. The release type 28 for this example is whether the technology is in development, is in manufacturing but not totally accepted for general use, or released for general application.
An administrator in charge of document database management must create a hierarchical category tree 30 defining a structure for categorizing the document of the database. Refer to FIG. 2 for a discussion of the decision process in constructing the hierarchical document category tree 30. The administrator determines the categories of documents within the document database 5. One category is the foundry design documents 31 that detail the device and cell layouts, circuit structure, feature geometry. The potential subcategories are attributes that are associated with each document such as the document type 22, application 24, technology 26, and release type 28.
Returning to FIG. 1, the administrator then manually creates the category tree 30. In the example of the document database 5 for a silicon foundry, the categories of the category tree would include for example the foundry design documents 31, the technology files 33 detailing the process rules for the technology, the mask related documents 35 describing the masking structure and layers, the yield improvement documents 37 describing the necessary design considerations to provide the levels of yield desired by a customer, the quality and reliability documents 39 describing the yield statistics and reliability equations to determine failure rates of fabricated integrated circuits. The administrator then creates the levels of the hierarchical category tree 30. For the example of the foundry design documents 31, the second level would be the application 40, the third level would be the technology 45 available for each application, and the fourth level would be types of documents 50 available each of the technologies. The administrator then sets the privilege access control for each node 55 and 60 of the hierarchical category tree 30 so that a user may gain access to the documents within the document database 5. The user must navigate the hierarchical category tree 30 to find a desired document.
Since the administrator must create the hierarchical category tree 30, each new document or creation of a new type of category requires a manual reconstruction of the hierarchical category tree 30. When the hierarchical category tree 30 is changed, the privilege access control for each node 55 and 60 must be recreated. The hierarchical category tree 30 is structured as a file containing the identifications for each of the document within the database 5. These identifications act as attachment points for the documents and must be recreated with each change to the hierarchical category tree 30. The document attributes 20 have no relationship to the structure of the hierarchical category tree 30. Further, since the construction and management of the hierarchical category tree 30 is a manual process there is a high risk that documents may be associated with the wrong nodes of the hierarchical category tree 30.
U.S. Pat. No. 6,393,427 (Vu, et al.) describes a method for constructing and maintaining a navigation tree based on external document classifiers. A navigation tree is constructed by taking usability and user preferences into consideration based on the returned category labels from the classifiers. Control parameters and algorithms are provided for inserting into and deleting documents from the navigation tree, and for splitting and merging nodes of the navigation tree.
U.S. Pat. No. 6,385,619 (Eichstaedt, et al.) teaches a system that generates user interest profiles by monitoring and analyzing a user's access to a variety of hierarchical levels within a set of structured documents, e.g., documents available at a web site. Each information document has parts associated with it and the documents are classified into categories using a known taxonomy. The user interest profiles are automatically generated based on the type of content viewed by the user. The type of content is determined by the text within the parts of the documents viewed and the classifications of the documents viewed. In addition, the profiles also are generated based on other factors including the frequency and currency of visits to documents having a given classification, and/or the hierarchical depth of the levels or parts of the documents viewed. User profiles include an interest category code and an interest score to indicate a level of interest in a particular category. The profiles are updated automatically to accurately reflect the current interests of an individual, as well as past interests. A time-dependent decay factor is applied to the past interests. The system presents to the user documents or references to documents that match the current profile.
U.S. Pat. No. 6,324,551 (Lamping, et al.) illustrates a document management system which organizes, stores, and retrieves documents in accordance with document properties. A property attachment mechanism allows a user to define and attach static properties and/or active properties to a document. The active properties include executable code which controls the behavior of the document contents. Upon transferring a document to another user, system, or environment, the document management system combines the document content and properties as a self-contained document which can interpret and manipulate its own contents. In this manner, a receiving user does not require additional applications in order to manipulate the document contents into a usable format. The self-contained document interprets and manipulates itself using its active properties to provide a useful document to the receiving user.
U.S. Pat. No. 6,038,560 (Wical) describes a knowledge base search and retrieval system, which includes factual knowledge base queries and concept knowledge base queries. A knowledge base stores associations among terminology/categories that have a lexical, semantic or usage association. Document theme vectors identify the content of documents through themes as well as through classification of the documents in categories that reflects what the documents are primarily about. The factual knowledge base queries identify, in response to an input query, documents relevant to the input query through expansion of the query terms as well as through expansion of themes. The concept knowledge base query does not identify specific documents in response to a query, but specifies terminology that identifies the potential existence of documents in a particular area.
U.S. Pat. No. 5,943,670 (Prager) teaches a system and method for determining whether the best category for an object under investigation is a mixture of preexisting categories, and how the mixture is constituted. The system suggests the need for new categories, and for a fixed set of categories. The system then determines whether a document should be assigned to multiple categories. The system stores extra information in a category index for the determination of mixed categories.
U.S. Pat. No. 4,996,662 (Cooper, et al.) illustrates a document processing system including a control structure having separated supervisory and document functions. The document functions, including a document buffer and document access control means are the sole means for accessing documents and the document function routines are selected from predetermined library of such routines. The system includes a flexible, expandable document structure incorporating information item blocks and indexing blocks related through pointers and means for applying visual and informational attributes to document text.
U.S. Pat. No. 4,897,780 (Lakness) describes a document manager system for allocating storage locations and generating corresponding control blocks for active documents in response to requests from active tasks. The document manager controls the loading into memory from mass storage, such as a disk, a document file in disk file format. The loaded document file is stored in memory in document structure format for subsequent access thereto by a task, such as an application program. The loading of the document file into memory may be initiated by a task, either as a result of a user command or as a result of the operation of the task itself. In response to a request to load a document file, the document manager makes a request of a memory manager unit for an assignment of memory space to store the document file. After storage of the document file within the assigned memory space the document manager generates within the memory a document control block descriptive of various parameters associated with the loaded document. The document manager subsequently writes the location within memory of the generated document control block into an assigned location within the task requesting access to the document file. The requesting task is thereby enabled to gain access to the loaded document file.
U.S. Pat. No. 4,633,430 (Cooper) teaches a document processing system that includes a control structure having separated supervisory and document functions. The document functions, including a document buffer and document access controller are the sole means for accessing documents and the document function routines are selected from predetermined library of such routines. The system includes a flexible, expandable document structure incorporating information item blocks and indexing blocks related through pointers and means for applying visual and informational attributes to document text.
U.S. Pat. No. 6,421,691 (Kajitani) provides a document management system, which can display documents under management without the user having to be conscious of the data structure of the documents generated during the course of transactions. The system also provides a recording medium storing a decision making program which can display application documents under management without the user having to be conscious of the data structure of the application documents generated during the course of decision making transactions. The system includes a management information generator for generating management information used to manage a plurality of documents; a storage device for relating the plurality of documents with the management information generated by the management information generator and storing the related documents and management information; and a display that allows selection of one of the documents based on the management information stored in the storage device, and for displays the selected document in a display format as defined by the instruction data contained in that document.